package com.ruoyi.system.domain.bo;

import com.ruoyi.common.core.domain.BaseEntity;
import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.Date;

/**
 * 待办事项业务对象 p_wait_matters
 *
 * @author ruoyi
 * @date 2022-07-28
 */

@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel("待办事项业务对象")
public class PWaitMattersBo extends BaseEntity {

    /**
     *
     */
    @ApiModelProperty(value = "", required = true)
    @NotNull(message = "不能为空", groups = { EditGroup.class })
    private Long id;

    /**
     * 咨询订单id
     */
    @ApiModelProperty(value = "咨询订单id", required = true)
    @NotNull(message = "咨询订单id不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long orderId;

    /**
     * 代办类型 0 问答代办 1 文字代办 2 电话代办
     */
    @ApiModelProperty(value = "代办类型 0 问答代办 1 文字代办 2 电话代办", required = true)
    @NotBlank(message = "代办类型 0 问答代办 1 文字代办 2 电话代办不能为空", groups = { AddGroup.class, EditGroup.class })
    private String waitType;

    /**
     * 问题id
     */
    @ApiModelProperty(value = "问题id", required = true)
    private Long questId;

    /**
     * 预约时间
     */
    @ApiModelProperty(value = "预约时间", required = true)
    private Date appointTime;

    /**
     * 咨询师id
     */
    @ApiModelProperty(value = "咨询师id", required = true)
    @NotNull(message = "咨询师id不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long adviserId;

    /**
     * 用户id
     */
    @ApiModelProperty(value = "用户id", required = true)
    private Long userId;

    @ApiModelProperty("代办标题")
    private String title;

    @ApiModelProperty("代办消息")
    private String msg;

    @ApiModelProperty("回复消息")
    private String toMsg;

    @ApiModelProperty("是否阅读 0 否 1是")
    private String type;
}
